# Compiler and compilation options
CC = gcc
CFLAGS = -Wall -Werror -I.

# Target executable
TARGET = test_stack_queue

SRCS := $(wildcard *.c)
OBJS := $(patsubst %.c, %.o, $(SRCS))

# Default target
all: $(TARGET)

# Link object files to create executable
$(TARGET): $(OBJS)
	$(CC) $(CFLAGS) -o $@ $^

# Compile source files to object files
%.o: %.c
	$(CC) $(CFLAGS) -c $< -o $@

# Clean generated files
clean:
	rm -f $(OBJS) $(TARGET)